/**
 * 酒店信息API接口
 *
 * JS文件可通过后端静态资源代理访问：js/{moduleName}-{businessName}.js
 * 
 * 在HTML中的使用方式：
 * ```html
 * <body>
 *     <!-- 引入API文件 -->
 *     <script src="js/{moduleName}-{businessName}.js"></script>
 *     
 *     <script>
 *         // 使用API - 查询列表
 *         HotelAPI.listHotel({ pageNum: 1, pageSize: 10 })
 *             .then(data => console.log('列表数据:', data))
 *             .catch(error => console.error('错误:', error));
 *         
 *         // 使用API - 获取详情
 *         HotelAPI.getHotel(1)
 *             .then(data => console.log('详情数据:', data))
 *             .catch(error => console.error('错误:', error));
 *         
 *         // 使用API - 新增数据
 *         HotelAPI.addHotel({ name: '测试', status: '1' })
 *             .then(data => console.log('新增成功:', data))
 *             .catch(error => console.error('错误:', error));
 *         
 *         // 使用API - 更新数据
 *         HotelAPI.updateHotel({ id: 1, name: '更新', status: '0' })
 *             .then(data => console.log('更新成功:', data))
 *             .catch(error => console.error('错误:', error));
 *         
 *         // 使用API - 删除数据
 *         HotelAPI.delHotel(1)
 *             .then(data => console.log('删除成功:', data))
 *             .catch(error => console.error('错误:', error));
 *         
 *          *         // 使用API - 获取下拉选项（仅数据表）
 *         HotelAPI.getHotelOptions()
 *             .then(data => console.log('选项数据:', data))
 *             .catch(error => console.error('错误:', error));
 *         
 *     </script>
 * </body>
 * ```
 * 
 * API函数说明：
 * - listHotel(query): 查询酒店信息列表，query为查询参数对象
 * - getHotel(id): 根据ID获取酒店信息详情
 * - addHotel(data): 新增酒店信息，data为表单数据对象
 * - updateHotel(data): 更新酒店信息，data为表单数据对象（需包含ID）
 * - delHotel(id): 删除酒店信息，id为要删除的记录ID
 *  * - getHotelOptions(): 获取酒店信息下拉选项列表（仅数据表可用）
 * 
 * 
 * 注意事项：
 * - 所有API函数返回Promise对象，需要使用.then()和.catch()处理结果
 * - 请求失败时会在控制台输出错误信息
 */

// 查询酒店信息列表
function listHotel(query) {
    return window.HeroRequest.request({
        url: '/boot/hotel/list',
        method: 'GET',
        params: query
    });
}

// 查询酒店信息详细
function getHotel(hotelId) {
    return window.HeroRequest.request({
        url: '/boot/hotel/' + hotelId,
        method: 'GET'
    });
}

// 新增酒店信息
function addHotel(data) {
    return window.HeroRequest.request({
        url: '/boot/hotel',
        method: 'POST',
        data: data
    });
}

// 修改酒店信息
function updateHotel(data) {
    return window.HeroRequest.request({
        url: '/boot/hotel',
        method: 'PUT',
        data: data
    });
}

// 删除酒店信息
function delHotel(hotelId) {
    return window.HeroRequest.request({
        url: '/boot/hotel/' + hotelId,
        method: 'DELETE'
    });
}

// 获取酒店信息下拉选项列表
function getHotelOptions() {
    return window.HeroRequest.request({
        url: '/boot/hotel/options',
        method: 'GET'
    });
}

// 导出API函数供全局使用
window.HotelAPI = {
    listHotel,
    getHotel,
    addHotel,
    updateHotel,
    delHotel,
    getHotelOptions
};